package sixth.抽象类与接口的应用.内部类的扩展;

interface A1{
    public void printA();
    abstract class B1{
        public void printB(){};
    }
}
class X1 implements A1{
    public void printA(){
        System.out.println("A--printA()");
    }
    class Y1 extends B1{
        public void printB(){
            System.out.println("B--printB()");
        }
    }
}
public class 在一个接口中包含抽象类 {
    public static void main(String[] args) {
       A1.B1 b1 = new X1().new Y1();//实例化外部类中的内部类 声明外部接口中的内部抽象类的对象
       b1.printB();
    }
}
/*
D:\WorkSpaces\Java\jdk-21\bin\java.exe "-javaagent:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\lib\idea_rt.jar=63989:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\WorkSpaces\JavaDevelopBase_start_329\out\production\JavaDevelopBase_start_329 sixth.抽象类与接口的应用.内部类的扩展.在一个接口中包含抽象类
B--printB()

Process finished with exit code 0

 */
/**
 * 除了可以在抽象类中定义接口以及在接口中定义抽象类
 * 还可以在一个抽象类内部定义多个抽象类 以及在一个接口内部定义多个接口
 */